#include <head.h>
// char *dest, const char *src

int main(int argc,char const *argv[])
{
    if(3!=argc)
    {
        printf("格式错误：%s file_dest file_src\n",argv[0]);
        return 0;
    }

    //打开文件
    FILE *fp_dest = fopen(argv[1],"w+");//使用"w+"模式打开文件进行读写 如果文件不存在则进行创建
    FOPEN_ERR(fp_dest);

    FILE *fp_src = fopen(argv[2],"r+");//使用"r+"模式打开文件 文件必须存在
    FOPEN_ERR(fp_src);

    //移动到文件头部
    fseek(fp_dest,0,SEEK_SET);

    char buf[1024];//临时缓冲区

    memset(buf , 0, sizeof(buf));
/*
memset 用于将一块内存区域的所有字节设置为指定的值。其函数原型是：
    void *memset(void *ptr, int value, size_t num);
        @ptr：指向要设置的内存区域的指针。
        @value：要设置的值（转换为无符号字符）。
        @num：要设置的字节数。
*/

    int byte=0;
    while((byte=fread(buf,1,sizeof(buf),fp_src))>0)
    {
        fwrite(buf,1,byte,fp_dest);
    }

    fclose(fp_dest);
    fclose(fp_src);
    return 0;
}